package com.foton.bpc.all.remoting;

import com.foton.bpc.all.remoting.netty.adpect.HandlerAdpect;
import com.foton.bpc.all.remoting.netty.codec.Codec;

import java.net.URI;

/**
 * @Author RenPu
 * @Date 2023/6/5 16:39
 * @Version 1.0
 * @Description: 底层网络的统一入口
 **/
public interface Transport {

    /**
     * 启动网络服务方法 (服务提供者)
     * @param uri
     * @param codec
     * @param handlerAdpect
     * @return
     */
    Server start(URI uri, Codec codec, HandlerAdpect handlerAdpect);


    /**
     *  链接方法（服务调用者）
      * @return
     */
   Client  connect(URI uri,Codec codec,HandlerAdpect handlerAdpect);



}
